k=k+*(ip[i]+i);中ip[i]+i怎么解释?

来源:百度知道 编辑:UC知道 时间:2024/06/09 12:47:15
#include<stdio.h>
void main()
{
int a[20],*ip[4],i,k=0;
for(i=0;i<20;i++)
a[i]=i;
for(i=0;i<4;i++)
ip[i]=&a[i*(i+1)];
for(i=0;i<4;i++)
k=k+*(ip[i]+i);
printf("%d\n",k);
} 谢谢了!

给你做第一遍循环吧
i=0,k=0
a[0]=0

for(i=0;i<4;i++)
ip[i]=&a[i*(i+1)];
ip[0]=0,i=1
做四次循环

for(i=0;i<4;i++)
k=k+*(ip[i]+i);
k=0+*ip(0)

*(ip[i]+i)指的是指针,最后一次循环为ip[i]+i=ip[3]+3